リモート・データ・ストアのレプリカをローカル・マシンに作成する方法を提供します。
リモート・データ・ストアがディスクレスの場合、この処理は、メモリ転送中、リモートのソース・データ・ストアにデータ・ストア・レベル・ロックを設定します。これによって、複製処理中、他のすべての接続がリモート・データ・ストアにアクセスできなくなります。
オプションで、memCopyパラメータ値にTT_TRUEを使用して、リモートのレプリケーション可能な一時データ・ストアまたは永続データ・ストアのレプリカを作成できます。このオプションでは、ディスクレス・モードのttRepDuplicateExは、ネットワークを介してデータ・ストアをコピーする前にメモリー内にリモート・データ・ストアの中間のコピーを作成するため、リモート・データ・ストアは、メモリー間コピーの実行中にのみロックされます。これによって、ディスクレス・モードでこの処理を行った場合のデータ・ストアのロック時間が短縮されます。追加のリモート・コピーに使用できる十分なRAMがある必要があります。
アクセス制御が有効な場合、指定したユーザーにはADMIN権限が必要です。
ttRepDuplicateEx (ttUtilHandle handle,
const char *destConnStr,
const char *srcDatastore,
const char *remoteHost,
ttRepDuplicateExArg *arg
);
typedef struct
{
unsigned int size; /*set to size of(ttRepDuplicateExArg) */
unsigned int flags;
const char *uid;
const char *pwd;
const char *pwdcrypt;
const char *cacheuid;
const char *cachepwd;
const char *localHost;
int truncListLen;
const char **truncList;
int dropListLen;
const char **dropList;
int maxkbytesPerSec
int remoteDaemonPort
/*new struct elements can only be added here at the end */
} ttRepDuplicateExArg;
ttRepDuplicateExには、次のパラメータがあります。
パラメータ | 型 | 説明 |
handle | ttUtilHandle | ttUtilAllocEnvを使用して割り当てられるTimesTenユーティリティ・ライブラリ環境ハンドルを指定します。 |
destConnStr | const char * |
リモート・データ・ストアのレプリカとして作成するローカル・データ・ストアの接続文字列を指定するヌル終端文字列。 |
srcDatastore | const char * |
リモートのソース・データ・ストア名を指定するヌル終端文字列。この名前は、データ・ストア・パス名の最後の部分です。 |
remoteHost | const char * |
リモートのソース・データ・ストアが配置されているマシンのTCP/IPホスト名を指定するヌル終端文字列。 |
arg | ttRepDuplicateExArg* |
必要なttRepDuplicateEx引数が含まれている構造体のアドレス。NULLがargに対して渡される場合またはarg -> sizeの値が無効の場合は、エラー12230( |
ttRepDuplicateEx引数の構造体には、次の要素があります。
ttRepDuplicateExArgフラグ要素には、次の値があります。
データ・ストア・パス名がC:\dsns\payroll
であるremote_payrollというリモートのTimesTen DSNのレプリカをlocal_payrollというローカルDSNに作成するには、次のように入力します。
ttUtilHandle utilHandle;
int rc;
ttRepDuplicateExArg arg;
memset(&arg, 0, sizeof(arg));
arg.size = sizeof(ttRepDuplicateExArg);
arg.flags = TT_REPDUP_REPSTART | TT_REPDUP_DELXLA;
arg.localHost = "mylocalhost";
rc = ttRepDuplicateEx(utilHandle, "DSN=local_payroll", "payroll", "remotehost", &arg);
);
次の組込みプロシージャの詳細は、『Oracle TimesTen In-Memory Database APIリファレンス・ガイド』を参照してください。
ttReplicationStatus
ttRepPolicySet
ttRepStop
ttRepSubscriberStateSet
ttRepSyncGet
ttRepSyncSet